package james.gan.core;

/**
 * @Description: ����IOC����
 * @author James 
 * @date 2017/12/26
 */
public interface BeanFacoty {
  
  /**
   * ͨ��BeanID ��ȡBeanʵ��
   * @param name
   * @return
   */
  Object getBean(String name);
  
  /**
   * ͨ�����ͻ�ȡBeanʵ��
   * @param requiredType
   * @return
   */
  <T> T getBean(Class<T> requiredType);
  
  /**
   * ͨ��BeanID �ж������Ƿ����Bean����
   * @param name
   * @return
   */
  boolean containsBean(String name);
  
  
}
